{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Linear assumption\n",
    "\n",
    "### Regression\n",
    "\n",
    "Linear regression is a straightforward approach for predicting a quantitative response Y on the basis of a different predictor variable X1, X2, ... Xn. It assumes that there is a linear relationship between X(s) and Y. Mathematically, we can write this linear relationship as Y ≈ β0 + β1X1 + β2X2 + ... + βnXn. \n",
    "\n",
    "In a very simple example, X may represent number of advertisements shown on TV per day and Y may represent total number of sales of the advertised product per day. Then we can regress sales onto adds shown per day on TV by fitting the model sales ≈ β0 + β1×TV (see figure below)."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.text.Text at 0xd2a404f8d0>"
      ]
     },
     "execution_count": 1,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAYgAAAETCAYAAAAs4pGmAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzt3XeYU2X2wPFvMr3CAGMvKMqxrCiCiqKC/LDr6qprd3VZ\nUde66i4WQKkiirJiX7BX1rZrWRsiiggqiiKrHhaxi9KGYXpJ8vvj3oEwZDJJJslkMufzPD4mNze5\n75sM99z7tuMJBAIYY4wxzXnbuwDGGGNSkwUIY4wxIVmAMMYYE5IFCGOMMSFZgDDGGBOSBQhjjDEh\nZbZ3AYxpjYj0BJaoamGI18YBy1T10SSX6TzgDuAbd5MHKAbmAheoam0yyxMJEZkBPK2qs9q7LKZj\nsABhOjRVvaEdDz9XVY9reiIiucB7wLnA/e1Wqhao6vntXQbTsViAMB2aiDyMc3cxRURqgZuBw4Ft\ngDtU9e/ufn8CLsZpVl0DXKqqX4lIb+BuoNB9z6fAaapaKyJ1wL+BvYGzVHVhK8XpDnQB1rrH3Ba4\nC9gByMK5er/Jfe084FqgBpgNXKGqmSIyBjgQ2BpYrKpni8hI4GS37N8CF6vqzyJyEjAK8AM+4G+q\n+m6Y7XOAu1T1WRE5EbgRyADWA1ep6ofu8Xu6x98RWOV+Hz9H8nuY9GJ9ECad5ACrVXUgcApws4jk\nisggnKv6Q1S1L3AL8Lz7nuHAI6p6ILALsBNwrPtaNvCSqkoLweEQEflURL4UkVXAP4EpqvqM+/pj\nwIOq2g/YHxgqIqeKyB7AZGCoW571OCfqJjsC+7rB4Q/AXsD+qroP8B9ghrvfrTjBoj8wGhjcynYA\nRGQ34D7gZFXtA9wA/FtEipvqBfxeVXcDyoALW/i+TZqzOwiTbv7t/v8TnIBRgHPC3wV4X0Sa9usm\nIt2Aa4DDRWQE0BvnLiK4r2NumGPNVdXjRMSLc8V+VtPxRaQAGOQeZ7y7fyGwD7At8Iaq/uhuvxMY\nE/S5C1S10X18HE5wWeiWPQPId197GnhBRF4B3sQJfOG2NxkCvKWqywFUdbaIrAT6ua/PUdX17uNF\nQLcw34FJY3YHYdJNDYCqNi0y5sE5qT6mqvu4V+H7Av1xro6fAi4AvgOm4gQWT9DnVbZ2QFX1q+o4\nnA7rB9zNGe7nHBR03AHATUBjs2P4mn1k8DEzgMlBn9EfGOged6T7eCFwHjBfRLwtbQ/6zFD/7r04\nzWDgfoeuQLOymk7EAoTpDN4AzhCRrd3nFwFvuY+PBMap6kyck+EBbNrcE41LgP8TkRPdK/AFwFUA\nItIVmAecALyO09y0rfu+cJ3HrwPnBzX/jAMeE5FMEfkWKFDV+3D6V3YHslraHvSZs4EjRGRnt2xD\ngO2BD2Kst0lT1sRkOooCEWl+NX9gJG9U1ddFZDLwpoj4cdr8T1LVgIhcj9McsxaoBt7BaY6Kmqp+\n7R7ndhF5DTgTuEtEPsfpz3hKVZ8AEJErgdfdjvVP3WOHMgOnSWqBiASA74HzVLVRRP4CPCkiDTgd\n0sNUtS7M9qZyfiEiFwPPi0ime+zjVbU8qAnOGDy23LcxySUiOwF/AMarqt8ddXSNqh7QzkUzZhN2\nB2FM8v2I0xn+uYg0AuXAsPYtkjGbszsIY4wxIVkntTHGmJAsQBhjjAkprfogVq2qiLm9rKQkn7Ky\nlgaSpJ/OVl/ofHW2+qa3eNa3tLQo5FwXu4NwZWbGOvS9Y+ps9YXOV2erb3pLRn0tQBhjjAnJAoQx\nxpiQLEAYY4wJyQKEMcaYkCxAGGOMCckChDHGmJAsQBhjjAnJAoQxxqSougYfK8uqqWtonlMqOdJq\nJrUxxqQDn9/PzNnLWLR0FWvX19GtOIe+vUs5bcguZHiTd11vAcIYY1LMzNnLmLXwxw3P16yv2/D8\nzKG9k1YOa2IyxpgUUtfgY9HSVSFfW7R0dVKbmyxAGGNMCimvrGPt+rqQr5VV1FJeGfq1RLAAYYwx\nKaRLYQ7dinNCvlZSlEuXwhzqGnysWF2V8LsJ64MwxpgUkpOVQd/epZv0QTTZe9fuPPfO107ndUUd\n3YoS23ltAcIYY1LMaUN2AZw+h7KKWkqKcunbuweBQCCpndcWIIwxJsVkeL2cObQ3Jw/qRXllHV0K\nnSanUdMXhNx/0dLVnDyoFzlZ8c0RYX0QxhiTonKyMtiiJJ+crIx26by2AGGMMR1AJJ3X8WYBwhhj\nkqQtS2c0dV6H0rd3j7g3L4H1QRhjTMLFa+mMljqvm7bHmwUIY4xJsHgtnRHceZ2RnYWvviEhdw5N\nrInJGGMSKBFLZ+RkZbB1j4KEBgewAGGMMQmVSktnRMsChDHGJFB7jD6KFwsQxhiTQO0x+iheEtpJ\nLSIHAJNVdbCI7AI8DASAJcAlquoXkeHAhUAjMEFVXxaRPOBxYAugAjhXVUM34hljTIpL9uijeElY\ngBCREcA5QJW76XZglKrOEZH7gBNEZD5wOdAfyAXeE5E3gT8Dn6vqGBE5HRgFXJGoshpjTCKFWjoj\nle8cmiSyielr4KSg5/2Ad9zHrwJDgf2Beapap6rlwDKgD3Aw8FqzfY0xpkMLXjqjI0jYHYSqPici\nPYM2eVQ14D6uALoAxUB50D6htjdta1VJST6ZmbF/8aWlRTG/tyPqbPWFzldnq2+a+vxzYCtKS0P3\nbcRLMifK+YMeFwHrgPXu43Dbm7a1qqysOubClZYWsWpVRczv72g6W32h89XZ6pt+vD98T+GYUeS8\n9C846yxWTb03Lp/bUmBN5iimRSIy2H18NDAX+BA4RERyRaQLsDtOB/Y84Jhm+xpjTOdUVUX+zRPo\nNrA/OS/9i4b++8PIkQk/bDIDxNXAWLdjOht4VlV/AabhBIDZwEhVrQXuBfYUkfeAC4CxSSynMcak\nhkCAnBeepdvA/hTcfgv+riWsv2c66155E3bfPeGH9wQCgdb36iBWraqIuTKd4fY0WGerL3S+Olt9\nO7bMxZ9SeP0Isj5cQCAnh+qLL6P6squgsBCIb31LS4s8IcsQl083xphOqK7BF/dhq55VqyiYNI7c\nJx7FEwhQd8zxVI6ZgL/nTnH5/GhYgDDGmCjFa/nuTdTXk/fAP8ifcjPeivU07rY7lRMm03Do4LiW\nPRoWIIwxJkrxWr67SdbsNykcdS2Zy/6Hv2tXKibdSu25f4LM9j1F21pMxhgThXgu352xfBnFZ/2e\nrqefTMbyr6n54/msXbCI2j9d2O7BAewOwhhjohLJ8t1blOSH/QxPxXryp04h7/678TQ0UD/wECon\nTMa3528SUeSY2R2EMcZEoU3Ld/v95Dz9BCUH9iP/rr/j32pryh94lJUz/82KbXaOKXlQItkdhDHG\nRKFp+e7gPogm4Zbvzlz4IYUjR5C16BMCeXlUXTOSiosuZeb8n1g044P4dXbHkQUIY4yJUjTLd3t/\nWUHB+BvJfeZpAGpPOoWq0ePwb7sdM2ctjWtnd7xZgDDGmChFtHx3bS15999NwdQpeKqraOizD5UT\nJtM44ECg9c7ukwf1avdVXy1AGGNMjJqW795EIED2q69QeOP1ZHz3Lf4ePaiccDO1Z5wNGRtP+PHo\n7E40CxDGGBMnGV99SeGoa8l+920CmZlUX3gJ1X+9hkCXrpvt29TZvSZEkEiVXNUWIIwxpo0868rI\nv+Um8h6agcfno37IUCrH34xv15b7EWLt7E4mCxDGmLSUiHWSNuPzkfvYwxTcPB7v2rU07tyLqvGT\nqB96JHhCrn+3iVTPVW0BwhiTVhKyTlIIWe+/R+H1I8j8Ygn+wiIqb5xAzfCLIDs74s9I9VzVFiCM\nMWkl3uskNef94XsKxo4m98UXAKg542yqrr+RwJZbxvyZITu7U0D7z8QwxpgI1DX4WFlWHXa2cVvW\nSWr186uryZ88kW4D+5P74gs09NuPstffpvKOe9oUHFJZq3cQIvIf4CHgX6rakPgiGWPMRtE0GcUy\ndLTVzw8EyPn38xSMHU3GTz/i23IrqqaMpe6U0yAFZjsnUiRNTDcD5wK3isgrwMOq+lFii2WMMY5o\nmoxiGToa7vPP2bKWwlHXkD1/HoHsbKovv4rqv1xNoLAoLnVLda0GCFV9F3hXRPKAU4DnRGQ9MAO4\nV1VDh2tjjGmjaGcbRzt0tKXPL64up89t91PyyWtOVrejjqVy7ET8O+3cxhp1LBF1UovIYOAc4Ajg\nVWAmcDjwInBkogpnjOncYmkyimboaPPPz/A1csxnr3Lm/KcprKuitteu1E66lYbBQ+JYq44jkj6I\n74DlOP0Ql6pqjbt9DmBNTcaYhImlySiaoaPBn9/320WcP+cBdlj7I5U5BTx+1EUMvm8cOfm5ca9X\nRxHJHcQQVf26+UZV9QH7xr9IxhjjaMts40iGjuZkZTC4Sx27PXYTA77+EJ/Hy3/6HMUTB53B/ofu\n2amDA0QWILYWkduBQsADZAA7qmrPRBbMGGMgcbONPZUV5P/9Ns697y489fV8teNe3HfoH1nXaw/2\nT6HZzO0pkgAxA5gMnAdMA44GPklgmYwxZoO4zzb2+8l55mkKJowh49df8G27HVVjJlB49G8ZXlW/\n2ecnZcmOFBVJgKhR1YdEpCdQBgwHPk5oqYwxppl4zDbO/GShk9Xt44VOVre/XUf1JVdAfj45wBbZ\nG0+JyVqyI5VFUstaEekGKDBAVQNAQWKLZYwx8eP99ReKLruIkqOGkPXxQsqPOYFf3vmA6r9dB/mh\ng07T/Ig16+sIsHF+xMzZy5Jb+HYUyR3E7TjDWk8CPhKRs7A7CGNMR1BXR97995A/9Va8VZWs3LE3\nMw47nwXdetPtPz/Rt3d9yDuCjpDtLRkimSj3jIg8q6oBEekH9AY+jeVgIpIFPAL0BHw4zVWNwMNA\nAFgCXKKqfhEZDlzovj5BVV+O5ZjGmE4oECD7jdcouOE6Mr9Zjr97d946/XKmFfXD73VO7OFmZHeE\nbG/J0GKAEJGHcE7aTc+b7zIshuMdA2Sq6kEicjgwEcgCRqnqHBG5DzhBROYDlwP9gVzgPRF502Zt\nG2Nak7FUneUx5swmkJFB9QV/puyKETz2zFf4Q5z0Q90RdIRsb8kQrg9iDvAOUARsA8wG3gBKWnlf\nOEuBTBHxAsVAA9DPPQ44s7SHAvsD81S1TlXLgWVAnxiPaYzpDNato2DUNZQMGkD2nNnUDx5C2Zz5\nVE2YzLrMvFbvCII1zb8IJZJsb5GsPNsRtHgHoaqPAIjIxcCBqup3n/8TWBDj8Spxmpe+AnoAxwGH\nuh3fABVAF5zgUR70vqbtYZWU5JOZGXu7YGlp51iAq0lnqy90vjp3ivr6fPDAAzByJPmrV0OvXnD7\n7WQffzzd3KxuRV3yKC3JY2VZzWZv79E1j149u5Obvenp8NJT+5Kfl82CJStYva6GHl3zGPCbrRl2\n/J5kZIS+Rvb5/Dz40n9ZsGQFq9bVUBrBe9oi0b9vJJ3UXYBuwGr3+ZY4k+ZicSXwuqpeJyLb49yV\nBKdfKgLWAevdx823h1VWVh1jsZwvetWqipjf39F0tvpC56tzZ6hv1vx5FIy8hqwli6GwkMpRY6m5\n8GLIyYHVlZvs26dX95Azsvv06k5FeQ2hvqkTB/bk6P2332QexNq1VS2W58lZSzc5xsqyGl6cu5zq\nmvq4JCsKFs/ft6VAE0mAmAgsFpF5OLOoDwAui7EcZTjNSgBrcfofFonIYFWdgzMJ723gQ2CiiOQC\nOcDuOB3Yxpg464gTwbw//uBkdfv38wDUnnoGuVOnUJPV8hV1rDOyI51/kY4jnyIZxfSYiMwCDsLp\ntL5IVVfGeLypwIMiMhfnzuF6YCEwXUSygS+BZ1XVJyLTgLk4/R0jVbU2xmMaY0LokBPBqqvJv/sO\n8u/6O56aGhr27UflxFto7LcfuaVFEOaKOtH5n9Nx5FNEy32r6grgubYeTFUrgVNDvDQoxL7Tgelt\nPaYxJrRE526Oq0CAnBdfcLK6/fgDvi22pGry7dSdekbUWd0Slf85HUc+pehlgjEmkdqSuznZMpZ8\nTpffHUvx8PPwrvyV6suupGzBJ9SdflZKpfxs68inVBRJPog+qro4GYUxxiRHR2gO8axZQ8Gk8eQ+\n/jAev5+6o46hcsxE/Dv3atdyhZOolWfbSyRNTDNxOomNMWkipZtDGhrIe3gG+bdMwlu+jsbeQuW4\nSTQMGdp+ZYpQovs5ki2SAPGFiNwAfABsGETs5qo2xnRAbUnEk0hZ77xN4ahryNSv8Bd3oXL8JGqG\nXQBZWe1Snlglqp8j2SIJEN2Aw9z/mgSAzpmk1Zg0kUrNId5vllM4ZhQ5r75MwONh7Wl/oHbkaLK2\n2jLpZTEbRTLM9bDW9jHGdDwp0RxSWUnBHbeRd++deOrr+Wm3vtw/6E98WrAd3Z5fRt/e5ak97DbN\nRdJJvSNOVrmewCHAk8AwVf02oSUzxiRFuzSH+P3kPDuTgvE3bsjq9vpJF3Nv5u7gLo+R0sNuO4lI\nwvL9wK046yj9CjwFPJrIQhlj0lfmoo/peuzhFF96Id7ydVT99Vp+eecD/tm974bgECzVht12JpEE\niB6q+gaAqgbcCWzFiS2WMSbdeH79laLL/0zJkYeR9fFH1J5wEmvnLaR6xPWs82VEtdqqSY6IclKL\nyHa4uSFE5GDAfi1jTETqKqvJvPdutrj373grK2jccy8qJ06m4aCDN+yT0sNuO7FI7iCuBF4GdhWR\nz3D6IC5PaKmMMR2ez+dj/i0PkNm/H1vdOp4qn4e3/nQdq9+Ys0lwgPSchZwOIhnFtFBE9sNJNep1\nNml9wktmjOmwMv63lKo/X8ZvF8/H5/HyYt/jePLA06nKLWToO9+E7HROpWG3xhHJKKYdgDtx5j00\nAP8RkStVNfRCLsaYTstTvo78KZPJe+B+ujU2smiHvZkx+E9832OHDfu0tPR1Sgy7NZuIpA/iCZzl\nNs7GuYMYBjyCk1/aGGPA5yP3yccomDQO7+rV1G+/I7f2PZMFvfbfbGRSa2s9pcss5HQQSYAoVtW7\ngp5PFZHzElQeY0wHk7lgPoUjR5D1+WcE8guoHDWGdcMu4n+PLoIwnc4dMVFRZxNJgPhYRM5W1ccB\nRORYYFFii2WMSXXen36kYPwN5D7/LAC1vz+dqtFj8W+1NTnQ4lpPe+/anefe+bpjJSrqpCIJEMcB\n54nI/YAfKAAQkT8AAVW10G9MZ1JTQ/4908i/cyqe6moa+u5L5cRbqNq7n3NH0OAjJyujxU7nQCDQ\ncRIVdXKRjGLaIhkFMcYkTlyacwIBsl/+NwU3jiTzxx/wlW5B1c23UX3Kacycs5xF0xdsdkfQvNMZ\nYNT0BSE/vqPmbU5nEaUcNcZ0DMGBAOKXdzrjv0soGDmCnPffo9GbyXP9f8ebQ89i9x49Cbz9NW99\n/NOGfZvfEQR3Oq8sq457oqKmOhd1yYvqfaZ1FiCMSQOhAsHAvbelqrou7Mm7NZ61ayiYPJHcRx7E\n4/fz4c79mTFoGCtKtoF6+Gnhj+Rmh77iD3VHEM8Z083rXFqSR59e3a0vI44sQBiTBmbOXrZZu/6L\nc5dHdfLeRGMjuQ/PoOCWm/CuW0fDLr2ZdsA5zNlyr812ra0PvZBeqDuCeCYqal7nlWU11pcRZ5FM\nlOsFDMBZYuN+oC9wpaq+l+CyGWMiUNfgY9HS0PNWozl5N8l6d46T1e2rL/EXFVM57ia+O+kc3nnw\n46jK1dIdQTxmTIers/VlxE8kdxAP4cykPgFnuY2rgCk4QcMY0w6C+xrKK+tabNdvSaiTt/e7bym8\ncSQ5/3mJgMdDzTnnUXXtaAKlpXRp8LXYNJSbnREyELV0RxCPGdPh6hxrX4bZXCQBIldVnxGRGcAT\nqjpXRDpWglhj0kSovoY+vbq37eRdWUn+tNvJv/dOPHV1NOw/gMqbbqGxzz4b9g/XNHTQXlvh9Xii\nviNoy4xpW/01OSIJED4RORlnPsRoETkRsOwdxrSDUH0Nby/6me23KAx5sgx78g4EyHnunxSMu4GM\nX1bg23obqm4cT93vTgmZuCdc01CG15vUNZTi2ZdhWhZJgLgAZ8nvi1V1hYicDpyf2GIZY5oL1+5e\nVdPAYftuy+JlazacvAfuvQ3HH7hDyJN35qefUHj9CLIWfkggJ4eqq0ZQfdmVUFDQ4vFbaxpK9hpK\nzQNWj64bRzGZ+PAEAoFWdxKRnYA9gNeAHVT1m0QXLBarVlW0XpkWlJYWsWpVRTyLk9I6W32h49d5\nZVk1192/gFB/5F4P3HTBgA19El0Kc9hum66b1dfz668U3DSW3KefwBMIUHfcCVSOmYB/hx2TU4kE\naOqP6dWzOxXlNe1dnKSJ599zaWnR5reMRJAwSEROA14E7gC6A/NF5Oy4lMoYE7GmdvdQmtrdm67i\nN2tiqa8n7+5pdDtwX/Keehzfbnuw7vmXWf/gYx06OMDGO5fcbBu1H2+RfKPXAAcB76rqShHpC8wC\nHo/lgCJyHfBbIBu4B3gHeBgnpekS4BJV9YvIcOBCoBGYoKovx3I8Y9JFrO3u2W++RsHo68hc/jX+\nkhIqJt9O7TnnQaadUE14kUw39KnqhvsYVV2Bs2hf1ERkME6wGQgMArYHbgdGqeohgAc4QUS2wklr\nOhA4EpgkIjYswXR6pw3ZhaH9t6N7cS5eD3QvzmVo/+1Ct7urUnzGyXQ561QyvvuWmmHDWbtgEbV/\nPN+Cg4lIJH8l/xWRS4EsEdkHuBj4NMbjHQl8DrwAFAN/A4bj3EUAvAocgTNKap6q1gF1IrIM6AN8\nFO7DS0ryycyMffRCaWlRzO/tiDpbfSE96nzFGf2orW+kbH0dJcU5mzetlJfDuHEwbRo5jY0wZAie\nO+4g7ze/Id1XK0qH3zcaia5vJAHiEmAUUAM8CMwGro7xeD2AHXGGzO6E07fhVdWmfrcKoAtO8CgP\nel/T9rDKyqpjLFbH78CMVmerL6RfnTOBivIaNtTI7yf3qccpmDgW7+pV0LMn5TdOpP6Y45xhq2lU\n91DS7fdtTZw7qUNuj2S57yrgOve/tloDfKWq9YCKSC1OM1OTImAdsN593Hy7MSaEzA8WUDjqGrI+\nW0QgP5+q60ZTcMP11Fc0tHfRTAfWYoAQET+EHFHnIfZEQe8BV4jI7cDWOMmH3hKRwao6BzgaeBv4\nEJgoIrlADrA7Tge2MSaI9+efKBh3A7nPPwNA7cmnUnXDOPxbb0NBbi5YgDBt0GKAUNW4r5erqi+L\nyKE4AcCL03z1DTBdRLKBL4FnVdUnItOAue5+I1W1Nt7lMabDqq11srpNu93J6rZ3Xyon3kLj/ge0\nd8lMGolkNdctgLOAQpy7hwxgJ1X9QywHVNURITYPCrHfdGB6LMcwJm0FAmS/8hKFY0aS8f13+HuU\nUnnTrdSefhZYDgQTZ5F0Uj8PfI2zeuu/cEYZfZbIQhljNpfxxX8pHH0t2XPfIZCZSfWfL6P66hEE\nilsdv2FMTCK55OihqucCL+EEi8HAnokslDFmI0/ZWgqvvZqSIQPJnvsOdUOPoOzdD6gaO9GCg0mo\nSAJEmft/BfZW1XLAlvs2JtEaG8l9cDrdBvQl78Hp+HbamfInn2H9k8/i22XX9i6d6QQiaWKaLSLP\nAH8F3hCRfQHrMDYmgbLee5fCkdeQ+eV/naxuYyZSc/6FkJ3d3kUznUirdxCqOhK4VlW/A84AvgJO\nSnTBjOmMvN9/R/Efz6brSceR8dUX1Jz1B9bO/4Saiy+z4GCSLpJRTN1wZj1/jbNUxr7AG8DPiS2a\nMZ1IVRX5d95O/t3TnKxu+x3gZHXbu2+7FSk4rakl4OmcImliegp4SUQAfg9MBe4DDk1guYxJKQk7\nWQYC5Dz/jJPVbcXPTla3G8ZRd9LvQ2Z1S4ZQaU379i7dkDnOdB6RBIgSVb1LRO4EHlbVx0TkikQX\nzJhUkMiTZebiT52sbh8ucLK6XflXqi+7CgoL41T62IRKa9r0/MyhvdurWKYdRPIX7hWRfsCJwMvu\niq62VrDpFJpOlmvW1xFg48ly5uxlMX+mZ9UqCq+6jK6HDyLrwwXUHftb1r73EdXX3dDuwSFcWtNF\nS1dT12Dp6DuTSALENcCtwBRVXY7TvHRlQktlTAqI+8myvp68e+9yhq0+/gi+3XZn3XMvsf6hx/Hv\n2LPtBY6D8so61q6vC/laWUUt5ZWhXzPpKZLVXN8C3gp6PiChJTKdRqp3gkZystyiJD+iz8p+6w0n\nq9uy/+Hv2pWKSVOoPXdYyiXuaUpruiZEvZvSmprOI7X+Ok2n0FE6QeNxssxYvoyC0deR8+brBLxe\naoYNp2rE9QS6dY+oDMkOorGmNTXpKdxy3wVuLghj4qqjdIK25WTpqVhP/u23kvePe/A0NFB/8KFU\nTphM9a67OSf8Bl/Y97dnEG1KX7po6WrKKmopKcqlb+8eodOamrQW7g5iDrCfiNyjqhcnqTwmzbXW\nrn/yoF4pdZUa9cnS7ydn5pMUThiDd9VKfNvv4MyCPuY4Zr79NYvmLIjohN+eQTTD6+XMob05eVCv\nlG4CNIkXLkAUisjjwFFu4p5NqOqwxBXLpKt4tusnQzQny8yFH1I4cgRZiz5xsrpdM5Lqiy+HvDxm\nzloa8Qk/VYJoTlZGSv0WJvnCBYgjgMOAQ4B3klMck+46aidouJOl95cVTla3Z2cCUHvSKVTdMB7/\nNtsC0Z/wO1oQNekrXEa5H4BHReQz4AtA3P2XqGpjkspn0kxadYLW1pJ3/90UTJ2Cp7qKhj77UDlh\nMo0DDnQ6l8uq6VKYE/UJv6MGUZN+IhnFlAX8D1iDM29iSxH5nap+kNCSmbTV4TtBAwGyX32Fwhuv\nJ+O7b/H36EHlhJupPeNsfB4PM2ct3aRzuU+v7lGd8NMqiJoOLZIAcQdwWlNAEJEBwJ3A/oksmElf\niegETdZw0IyvvqRw5DVkz53jZHW76FInq1uXrgAh+xreXvQz229RGDJAtHTC7/BB1KSFSAJEYfDd\ngqouCNVpbUy04tEJmqzhoJ6ytRTcchO5Dz+Ax+ejfshQKsffjG/XjR3M4foaqmoaOGzfbVm8bE1E\nJ3wbSWQR6hz+AAAeKElEQVRSQSQBYq2InKCq/wYQkRNxmpuMaXcJHw7a2EjuYw9TMHkC3rVrady5\nF1XjJ1E/9MjNVlsN19ewrrKOI/fbnlMP2yXkCb+lOyAbSWTaUyQB4gLgcRF5APDg5IU4O6GlMiYC\niR4OmjVvrpPV7Ysl+AuLqLxhPDUX/LnFxD2RdC43P+F3lFnlpnOKZC2m/wEHiEgB4FXVisQXy3Rm\nkfYntGU4aLhjeH/4nsIxo8h56V8A1JxxNlXX30hgyy3DljuWzuWOMqvcdE4Rr8Vky26YRIv2ajqW\n4aBhj1FTQ/5dfyf/7jvw1NbS0G8/J6tb334R1yGazuVUmRBnTEtssT6TMqK9mo7bFftHP9D7/dc5\n4vl7yPj5J3xbbkXVbeOoO/lUiLKZJ5rOZZsQZ1Jdq3/9InJRMgpiOrdYcy+cNmQXhvbfju7FuXg9\n0L04l6H9twt5xV5b37jZMXZeuZyb/3k9R981Eu/qVVRfcTVr539C3e9Pjzo4BGvqawh3B9B0BxSK\nTYgzqSCSO4hLcZIEGZMwsV5NR3PFXrZ+4zGKq8s5Z97jHPH5LLwEWLDLAXS79w5K9t4jfpVqhU2I\nM6kukgDxg4jMBj4Aapo2quq4WA8qIlsAHwOHA43Aw0AAWAJcoqp+ERkOXOi+PkFVX471eCb1tXV5\niUiGg5YU51BakMGB777A6QueprCumu+7b88/Bp/Pj3sdwIQ9pE11iIVNiDOpLJIAsSDosafFvSIk\nIlnA/WwMNrcDo1R1jojcB5wgIvOBy4H+QC7wnoi8qaqW7zBNJeNqOvftt7j1gcvo9vO3VOYU8I/B\n5/PKPkfj92YwtJ2u2G1CnEllkQxzHesOce2Fc4Wf18YRTVNwmqyuc5/3Y+Nqsa/irCLrA+a5AaFO\nRJYBfYCP2nBck+ISdTWdsXwZBTeOhNdfpcTrZfHQU/hH39/zgz8nZa7YbUKcSUWtBggRGQL8A8gA\nDgIWi8hZqvpGtAcTkfOAVar6uog0BQiPqgbcxxVAF6AYKA96a9P2sEpK8snMjP3qq7S0KOb3dkSp\nWN8rzuhHbX0jZevrKCnOITe7DQPtKipgwgSYOhUaGmDQIDx33EGfvfdmSryOkeJS8TdOJKtvfEXy\nL2MScDDwqqquEJFBwFNA1AECGAYERGQosA/wKLBF0OtFwDpgvfu4+fawysqqYyiSo7S0iFWrOs8c\nwFSvbyZQUV5DTCX0+8n551MUTBhDxspf3axuE+jyx7NZtboS3Hq36RgdQKr/xvFm9W3bZ4USyTg+\nr6r+0vREVb+ItRCqeqiqDlLVwcCnwB+AV0VksLvL0cBc4EPgEBHJFZEuwO44zVvGhJX58Ud0Peb/\nKL78z3gr1lM14nrWvvcR9cefuNnaScaY8CK5g/hRRI7DufLvClwCfB/HMlwNTBeRbOBL4FlV9YnI\nNJxg4QVGqmptHI9p0oz3118oGH8juf98CoDa353sZHXbdrt2LpkxHVckAeJCnJwQ2wPLgbdwFvBr\nE/cuosmgEK9PB6a39TgmzdXVkXf/3eRPnYK3qpKGvfamauJkGgYc5LwctOZSRB+XpLwSxnQEkYxi\nWgmcISLFQIOq1rT2HmMSLhAg+7X/OFndvv0Gf/fuVIydSO1Zf4CMjJBrLg3ce1uOP3CHkOs62aqq\nxmwuklFMewGPADu4z78CzlXVrxNcNmNCytCvKBx1DdnvvO1kdbvwYqr/eu2GrG4Qes2lF+cup7qm\nPuS6TraqqjGbi+TS6D6cPoAeqtoDuA14MLHFMmZznnVlFIy6hpLBB5L9ztvUH/Z/lM2ZT9X4mzcJ\nDtGu6xTrOlDGpLtIAkSeqr7a9ERVX8CZp2A6qboGHyvLqiM+cUa7/2Z8PnIfeZBuB+5L/j/uxbfD\njpQ/PpPyp5/H13vz5TEiWdepLfsb01m02MQkIju4Dz8TkWuBB3DWRToLZ3SR6WSibaePR7t+1vx5\nFIy8hqwli/EXFFI5epyT1S2n5U7naNd1ass6UNapbdJZuD6Id3AW0PMAg3FGMzUJ4KyVZDqRaNvp\n29Ku7/3xBwrGjib3388DUHv6WVSNvBH/llu1Ws5o13WKZR0o69Q2nUGLAUJVd0pmQUxqizb7WczZ\n0qqryb/7DvLv+juemhoa+vWncuItNO7bP6ryhlrXaeDe23D8gTtEvH+4NZqsU9t0BpGMYhKceQ8l\nwdtVdViiCmVST7T5GqLO7xAIkPPiCxSMHU3Gjz/g22JLqm6ZGnPinlCrpG63TdcWlyaIZlVVSxVq\nOotIJsq9ADwNLE5wWUwKS2S7fsbni51hq/PnEcjOpvryq6j+y9UECtu+EFm0q6RGsr+lCjWdRSQB\nYl1bkgOZjqt5B2y82/U9a9ZQMGk8uY8/jMfvp+6oY6kcMwH/zr0SVqd4aGtyI2M6ikgCxMMiMhFn\niY3Gpo2q+m7CSmXaVUsdsKcM3hmIvJ2+xXb9Q3Yk7x/3kH/rzXjL19HYW6icMJmGwUOSVse2sFSh\nprOIJEAMBvbDyQXRJAB0jH/NJmqtdcBGmv0sVLt+4bx3KBx6Npn6Ff7iLlROuJmaPw6HrKyE1yue\nLFWo6QwiCRD9VXXXhJfEpIRIO2Cjbdffat0vFF4xkpzXXiHg8VDzh2FUXTuKQI8e8Sp6UlmqUNMZ\nRDI85HMR6ZPwkpiUEO9ZxZ7KCgomjqXbIfuT89or1A84iLJZc6mc8vcOGxyCNQVLCw4mHUVyB7Ez\nsEhEVgD1OBPnAqq6c0JLZtpF3Dpg/X5ynnnayer26y/4tt2OqhvHU3fCSZa4x5gOIpIAcWLCS2FS\nRjw6YDM/WUjhyBFkfbyQQG4uVX+9lupL/wL5NvTTmI4kkgCxWTIf16PxLIhJHbF2wHp//YWCCWPI\nnfkkALUnnETVDePwbx969rIxJrVFEiAOC3qcBRwCvIsFiLQVdQdsXR15999D/tRb8VZV0rjnXlRO\nnEzDQQcnr9DGmLiLJKPcH4Ofi0g3YGbCSmRSRqujlQIBst94jYIbriPzm+X4u3Wj4sap1J5zHmRY\np60xHV0kdxDNVQI941wO08FkLFVneYw5swlkZFA9/CKq/3Ydga4lrb7XGNMxRLJY39s4E+PAGcG0\nM/BKIgtlUpenfB35U24m74F/4GlspP7Qw6iccDO+3XZv76IZY+IskjuIMUGPA8BqVf0iMcUxKcvn\nI/eJRymYNA7vmjX4duxJ5bhJ1B91jA1bNSZNRZJR7ptQr6nq9wkrlUmI4MX3opG14H0nq9vnnxHI\nL6By1BhqLrwkbFY3Y0zHF2lGuSYBYBuc0UzWC5mimq/CGmrxvYF7b8vxB+4QNvuZ96cfKRg3mtwX\nngOg9venUzV6LP6ttk5WVYwx7SjijHIiUgjcBhwJDE9wuUwMWlqFNRAI8NbHP23Yb836Ol6cu5zq\nmvrQ2c9qapysbndOdbK69d3XyerWf/8k1sYY094iStUlIv/HxoRBe6nqm4krkolV0yqsa9bXEWDj\nKqzzPv8l5P6Llq6mrsG3cUMgQPaLL9BtYH8KbrmJQGER6++4h3Wvzo4oONQ1+FhZVr3pZxpjOqyw\nndQiUgDcjnvXYIEhdYVbhbW2PvQJOzj7WcZ/lzjDVufNJZCVRfWlf6H6yr8SKCpu9dgt3bmcNmSX\nsE1YxpjUFq6T+v+A6cCbwG9UtbKtBxORLOBBnHkUOcAE4AvgYZz+jSXAJarqF5HhwIU4SYomqOrL\nbT1+Ogu3CmtLSopyKamvpPBvI8l97CEnq9uRR1M1diK+nSPPa9Ba/ghjTMcU7g7iTaABOAJYLCJN\n29uymuvZwBpVPcedkf2p+98oVZ0jIvcBJ4jIfOByoD+QC7wnIm+qanRnwE4k3CqsudkZm91FeP0+\nzvtmFlsdfLqT1W3X3lSOv5mGIUOjOm6k+SOMMR1PuACxU5jXYvUM8Kz72INzd9APZ8QUwKs4AckH\nzHMDQp2ILAP6AB8loExpIdwqrAfttRVej2fD4nsDV37B+XMeoNsPXztZ3cZPombYBTFldYskf0Q0\nyYWMMakj3Cim7+J9sKZmKhEpwgkUo4Apqto0U7sC6AIUA+VBb23aHlZJST6ZmbFfrZaWFsX83nio\nrW+kbH0dJcU55Ga3Poex+f6XntqX/LxsFixZwep1NfTomseA32zNsOP3JCPDS91XSwlcfTW5/3nZ\nmdx2wQV4J0ygsLSUwhjLXNQlj9KSPFaW1Wz2Wo+uefTq2T2iuiRLe//GyWb1TW+Jrm/S/+WKyPbA\nC8A9qvqkiNwS9HIRsA5Y7z5uvj2ssrLqmMtVWlrEqlUVMb+/LaLt5A23/4kDe3L0/ttvMg9i7fe/\nUnDHbeTdeyee+noaDjiQrHvvZtV2bj9DG+vdp1f3kHcufXp1p6K8hvb5VjfXnr9xe7D6prd41rel\nQJPUACEiWwJvAJeq6lvu5kUiMlhV5wBHA28DHwITRSQXpzN7d5wO7LQUbSdva/tvWIU1EHCyuo2/\nkYxfVuDbZlsnq9uJJ1O6RXGbA0OTWPNHxKL5JEBjTOIk+w7ieqAEGC0io91tVwDTRCQb+BJ4VlV9\nIjINmIszV2OkqtYmuaxJEW0nb6T7Z376CYXXjyBr4YdOVrerr6H6sisTktUt6vwRMbChtMYkX1ID\nhKpegRMQmtssa52qTscZZpvWou3kbW3/qm9+oPs9t5L71ON4AgFqf/s7J6vbDjsmpPzBWs0f0QY2\nlNaY5LNLr3bWNDw1lJKi3M0W1mtp/0xfA2csfpldjxpI3pOP4dt9T9a98AoVMx5JSnBIpNbummzm\ntjGJYQGinTUNTw2lb+8emzXVhNq///KF3PXIFZz+5gzIyqRi8u2UzXqXhoGHJKzcyRTJXZYxJv5S\nZ/xhJxZtJ2/T9hXvL+KUV+6l/zef4PdmUPWnC6gZcT2Bkm5JK3syhJsEGOouyxgTHxYgUkC0nbyZ\nlRUMf/dh8mbch6exkdqDB1E9cTK+3fdIYqmTJ9wkwFB3WcaY+LAAkUJa7eT1+ch9+gkKJo7Fu3oV\nvh16UjnuJuqPPjbts7olcyitMcZhAaKDyPxgAYUjR5C1+FMC+QVUXX8D1RddCrm57V20pEjGUFpj\nzKYsQLSDaCZ7eX/+iYJxN5D7/DMA1J5ympPVbettklHUlJPIobTGmE1ZgEiiqCZ71dSQf++d5E+7\nHU91NQ379HWyuu13QPsU3hjT6ViASKKIJnsFAmS//CKFY0eR8f13+Eu3oGLSFOpOOxNsxrAxJons\njJMkkUz2yvjiv3Q5+Xi6/OkcvCt+pvriy1m74BPqzjjbgoMxJunsDiJJwk32aly5kvy/XUnJ0486\nWd0OP5KqcTfh67VrkktpjDEbWYBIklCTvbx+H0d/9hpnz3+KwtpKGnvtQtWEm6n/vyPasaTGGOOw\nAJEkzSd79fl+McPfnkHPNd9Tl1dA5dibqPnTBZCdnfSy2RLaxphQLEBEKB4n0dOG7ELxyp/Y677J\n9P/qffx4WHLYiWwx7RY8W26V0GOHYktoG2PCsQDRiridRKuqKJp2G+fdcyeeujqq++5HxU23sGW/\nfok/dgtsCW1jTDh2mdiKppPomvV1BNh4Ep05e1lkHxAIkPPsTLod1I+CqVPwd+vO+ntnUPXaLLxh\ngkNcjh1GbX2jLaFtjAnLAkQYbc1DkPnZIroedwTFFw/Hu3YNVVf9jbXvf0zdyae2unZSonMglK23\nJbSNMeFZgAgj1jwEnpUrKbzyUroeMZisjz6g7tjfsva9j6i+djQUFCT02JEqKY4uUZExpvOxABFG\ntNneqK8n75476XbgvuQ98Si+3XZn3XMvsf6hx/Hv2DOxx45SbnZmVImKjDGdjwWIMKLJ9pY963VK\nBg2gcMxIyPBSMWkKZW+9R8Mhm6XbjvuxY3XakF0Y2n87uhfn4vVA9+JchvbfzpbQNsYANoqpVa3l\nIcj4+n8UjL6OnFlvEPB6qRk2nKoR1xPo1t0ZnlpWHfPw1ETnQLAltI0x4XgCgUB7lyFuVq2qiLky\npaVFrFpV0eLrzecieNaXk3/bLU5Wt4YG6g8+lMoJk/HtsWfch6cmYh5Ea/VNR52tzlbf9BbP+paW\nFoUcNWN3EBHakIfA7yf3yccomDDGzeq2I5U3TqD+uN9uGJkU7/kFlgPBGNMerA8iCpkffkDXIw+j\n6C+X4Kmuouq60ayYPZ8fDz6cukY/kPjhqcYYkyx2BxEB74qfnaxuz/0TgNqTfs/6UWN46qsaFj3+\n2SbNSIf13bbV4al2N2CM6QgsQDSzSXu/r8HJ6nbHbU5Wtz77OFndDhjAU7OWhmxG8vn8m63a2sTm\nFxhjOhILEC6fz8+Ts5Y6HcvltQz9+WPOnf0QBat+wt+jlMqbbqX29LPA6w3bjLT467X02aUHb3/y\n02av2fwCY0xHkrIBQkS8wD3A3kAdcL6qtn0RohY8+NJ/mbXwR7pVrmXca39nn+8X0+jN4ONjz2bH\nOyYRKO6yYd/WZjkP7bcdGV5PwoanGmNMMqRsgABOBHJV9UARGQDcBpyQiAPVNfhYsGQFAAOXvs8+\n3y/mo5368cCgYdT27MWEvEKCG4ZCJf9pUlKUS7fiXJtfYIzp8FI5QBwMvAagqgtEpH+iDlReWceq\ndTUAvLLP0XzSsy8/ddsWAG+IjuXmyX+CBTcj2fBUY0xHlsoBohgoD3ruE5FMVW1s6Q0lJflkZkZ/\npV7UJY/SrnmsLKvB783YEBwAenTNo1fP7uRmb/pVXXpqX/LzslmwZAWr19XQo2seA36zNcOO35OM\njI4xeri0tKi9i5B0na3OVt/0luj6pnKAWA8E194bLjgAlJVVx3ywAb/ZmhfnLt9se59e3akoryHU\nfMUTB/bk6P2336QZae3aqpjLkEydbdYpdL46W33TW5xnUofcnsqXuvOAYwDcPojPE3mwYcfvGdPC\ndU3NSNbHYIxJN6l8B/ECcLiIvA94gD8m8mAZGbZwnTHGBEvZAKGqfuCiZB/XOpaNMcaRyk1Mxhhj\n2pEFCGOMMSFZgDDGGBOSBQhjjDEhWYAwxhgTkgUIY4wxIVmAMMYYE5InEAi0dxmMMcakILuDMMYY\nE5IFCGOMMSFZgDDGGBOSBQhjjDEhWYAwxhgTkgUIY4wxIVmAMMYYE1LK5oNIFhHxAvcAewN1wPmq\nuqx9SxVfIpIFPAj0BHKACcAXwMNAAFgCXOLm4EgbIrIF8DFwONBIGtdXRK4Dfgtk4/w9v0N61zcL\neATnb9oHDCdNf2MROQCYrKqDRWQXQtRRRIYDF+J8BxNU9eV4HNvuIOBEIFdVDwSuBW5r5/IkwtnA\nGlU9BDgKuAu4HRjlbvMAJ7Rj+eLOPYHcD9S4m9K2viIyGDgIGAgMArYnjevrOgbIVNWDgHHARNKw\nziIyApgB5LqbNqujiGwFXI7z+x8JTBKRnHgc3wIEHAy8BqCqC4D+7VuchHgGGO0+9uBcZfTDucoE\neBUY2g7lSqQpwH3Az+7zdK7vkTg5218AXgJeJr3rC7AUyHRbAIqBBtKzzl8DJwU9D1XH/YF5qlqn\nquXAMqBPPA5uAcL54yoPeu4TkbRqelPVSlWtEJEi4FlgFOBR1aZ1ViqALu1WwDgTkfOAVar6etDm\ntK0v0APnwub3OGl6nwC8aVxfgEqc5qWvgOnANNLwN1bV53CCX5NQdWx+Dotb3S1AwHqgKOi5V1Ub\n26swiSIi2wNvA4+p6pNAcNtsEbCuXQqWGMOAw0VkDrAP8CiwRdDr6VbfNcDrqlqvqgrUsukJIt3q\nC3AlTp174/QfPoLT/9IkHesMof/dNj+Hxa3uFiBgHk57JiIyAOdWPa2IyJbAG8A1qvqgu3mR23YN\ncDQwtz3KlgiqeqiqDlLVwcCnwB+AV9O1vsB7wFEi4hGRbYAC4K00ri9AGRuvmtcCWaTx33SQUHX8\nEDhERHJFpAuwO04HdpulVVNKjF7Audp8H6d9/o/tXJ5EuB4oAUaLSFNfxBXANBHJBr7EaXpKZ1cD\n09Oxvqr6sogcinOi8AKXAN+QpvV1TQUeFJG5OHcO1wMLSe86Q4i/Y1X1icg0nGDhBUaqam08DmbL\nfRtjjAnJmpiMMcaEZAHCGGNMSBYgjDHGhGQBwhhjTEgWIIwxxoRkAcJsRkR6ikhARA5vtv1bEekZ\nh8+Py+e0cowdROQrEfnYnUEe7fvnBI03b0s5xorIIe7jGSKSEku5iEgXEflXCpSjp4h8297lMKHZ\nPAjTkgac8dZ7qWpFexcmBoOBT1T1zHYuxyCcGeyo6vntXJZgJTizzI1pkQUI05KfgTdxVre9IPgF\n98p6jDtTGRF5GJjj/vcvYDmwF87EpTnAeTgnpN+p6pfux4wRkb1xloW4UFUXuzO+78dZjdQPXKeq\ns0RkDDAA2AG4S1XvCSpLb+AfQDegCmdVywacJc0LReQ+Vb0oaP9tgQeArsDWwFOqeq27+uUMnDWN\nvsVZ3wgReR54UlWfdZ8vdL+P9cC9QHegGrhMVRe530V3YBfgZvfzZojI74A7gTE4i6k9gTPj2Q9c\nrqoLRGQ/nAlg+cBq93v5xl0yZBHOwmx5wGVuPfcEpqrqVBEpBO4GfgNk4CwP/ZS7LtVR7vezM/CG\nql6Ms3bRNiLyAnAu8BSwlfs1jVXVF4N+ctwyfAkcgLOy6F9U9Y0Yf7O+7m8A8FnQ9t+431EhztIo\nt+GsPLwcOEJVl4pIAc76S7vGazKYaZk1MZlwrgaObN7U1Io+wHhAgP2Anu5S6k+xaaD5n6r2dfd9\nxN12B/CgqvbDyW1wf1DzUK6q7hF8onE9DkxT1T446/M8i3MiuwF4MTg4uM7ACQoD3LJeLCI9cE66\nqOruOCffXu7+jwGnA4jIrkCeqn7ilnmEqu7r1uvpoGOsUdXdVfURnCB5vqoGL+HyJ+BlVe0PjAAO\ndmfGzgDOdD/zNpxF6DZQ1b3c8twJnAwc4tYTnAUYP3a/u0OBkSKys/vaQe7+fYDjRWQvt44/q+rv\ngN8B37rvPdv93FBy3LKdCTziljmW3+zRoO9uedD283FyGewHHAZMdPM5POKWC7ceL1twSA4LEKZF\nqroeJxHL9Cja8X9R1UXuP+wfgbfc7d/h3EU0meEe4z/AjiLSFecKeZyIfIqzlHEWG0/UHzQ/kHvV\nvIuqPu9+1gKcdXkkTJ2mAN+LyF9xTm7ZOFfyg4F/uvv8D3jffcsrwAC3/mcAT7jH3Q94yC3rkzh3\nK91bKmszs4C/isiTwLY4V8m93bq+6H7mZJwr/iavuv//DligqtWq+h3OnRA4391F7nvfdeu0p/va\n+6paoarVOCfkbs3K8z5wotsncTBO0A5luvv9fAqswAk40f5mPYBtVHWWu+nhoJevBnLd5EcTce4k\nAB7CCUrg3O0Ev8ckkAUIE5aqvsHGpqYmAZx1q5pkBT2ub/YRLa2M23x7PU7TyBBV3UdV98Fpomi6\n8q5hc95m5cB93mLTqYjchnP1/B1OM9Rq9z0BNv330AigqvU4+RV+C5yK0zSUAdQ2ldMt6wE4waml\nsm6gqvOAPYDXgdNwcjhkAMuDPq8fzsm6SfD3Guo7zQDObvbdvea+Fny13fy3awqIu7l1OwT4UESa\nf6/Nj+t1n0f7mzU/fvBn/hPnbuYLnLWVmsr3LfCdiJwEbKmqrQVgEycWIEwkrsZJSrON+3w1sLO7\nemQ3Wm6SCOcsALdt/iv36nY2cLG7fQ9gMU57fEjuHc7X7omjaTXerQi/kuXhwK2q+gxOu/m2OCe5\nWcCZIuIVkR1xmmWaPIbzHaxV1e/cpCz/E5Gz3eMejnPVHkojzQKWiNwCnOM2QV0K7IvTrt6tacQT\nzpLlT4apR3OzgT+7n781zne3Q5j9N5RLRC7F6Xd4Buf734LQ+QSamtr649wNfk70v9kanJP9se6m\n4EEEhwM3qOq/cTr3EZEM97UHcfpNHgtTJxNnFiBMq4KamrLc5//FaXr5L062uliWVe7tNktchdNs\nAE4/wAARWQzMxDmJtjaC6mzgchH5HKep5iT3qr8lk4DHRORj4G84fQQ74eRxXo/TfzGdoCDjXvF3\nwenvaHIWcL5b1knAaUGJXIK9BtwnIsEB507gZLf+LwB/VtU6nIQ/t7mfeS5OX0WkxgJ5IrIE56Q9\nQlW/DrP/rzhNbW/j9AmI+x2+izMAIVQ+gZ1F5BOcQQGnqaqP2H+zG0VkERubo8DpwH/PPcaROIMF\ndnJfex6n898CRBLZaq7GmFa5o5jGqOqcdji2Byf3wUWq+ttkH78zs2GuxphUNxU4HidImCSyOwhj\njDEhWR+EMcaYkCxAGGOMCckChDHGmJAsQBhjjAnJAoQxxpiQ/h/D+9IWPHB13QAAAABJRU5ErkJg\ngg==\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0xd29fcf6ac8>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# simulation of a linear regression example\n",
    "\n",
    "import matplotlib.pyplot as plt\n",
    "import seaborn as sns\n",
    "% matplotlib inline\n",
    "import numpy as np\n",
    "\n",
    "n = 50\n",
    "x = np.linspace(1, 100, n)\n",
    "y = x * 10 + np.random.randn(n)*80\n",
    "\n",
    "fig, ax = plt.subplots()\n",
    "fit = np.polyfit(x, y, deg=1)\n",
    "ax.plot(x, fit[0] * x + fit[1], color='red')\n",
    "ax.scatter(x, y)\n",
    "ax.set_title('Linear Regression')\n",
    "ax.set_ylabel('Number of sales per day')\n",
    "ax.set_xlabel('Number of advertisements per day')"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Classification\n",
    "\n",
    "Similarly, for classification, Logistic Regression assumes a linear relationship between the variables and the log of the odds.\n",
    "\n",
    "Odds = p / 1 - p, where p is the probability of y = 1\n",
    "\n",
    "log(odds) = β0 + β1X1 + β2X2 + ... + βnXn\n",
    "\n",
    "In the figure below, I illustrate and explain this relationship."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "([<matplotlib.axis.XTick at 0xd2a44b8048>,\n",
       "  <matplotlib.axis.XTick at 0xd2a181bfd0>,\n",
       "  <matplotlib.axis.XTick at 0xd2a44ac1d0>,\n",
       "  <matplotlib.axis.XTick at 0xd2a4529cf8>,\n",
       "  <matplotlib.axis.XTick at 0xd2a452d7f0>,\n",
       "  <matplotlib.axis.XTick at 0xd2a45352e8>,\n",
       "  <matplotlib.axis.XTick at 0xd2a4535da0>],\n",
       " <a list of 7 Text xticklabel objects>)"
      ]
     },
     "execution_count": 2,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\nRK5CYII=\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0xd2a4469e80>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# simulation of a logistic regression linear dependency\n",
    "\n",
    "X = np.linspace(-6, 6, 100)\n",
    "Y = 1 / (1 + np.exp(-X))\n",
    "\n",
    "# log dots\n",
    "Y_dots0 = np.array(list('0')*35).astype(int)\n",
    "Y_dots1 = np.array(list('1')*35).astype(int)\n",
    "\n",
    "#ticks\n",
    "x = np.array([-6, -4, -2, 0, 2, 4, 6])\n",
    "my_xticks = [1,2,3,4,5,6,7]\n",
    "\n",
    "fig, ax = plt.subplots()\n",
    "plt.plot(X, Y)\n",
    "ax.scatter(X[0:35], Y_dots0, s=3, color='green')\n",
    "ax.scatter(X[65:100], Y_dots1, s=3, color='orange')\n",
    "plt.axhline(y=0.5, xmin=-6, xmax=6, hold=None, color ='red')\n",
    "ax.plot(ax.get_xlim(), ax.get_ylim(), ls=\"--\", c=\".3\")\n",
    "ax.set_title('Logistic Regression')\n",
    "ax.set_ylabel('Fraudulent Application / Probability of Fraud')\n",
    "ax.set_xlabel('Average Number of Previous Loan Applications per day in the last week')\n",
    "plt.xticks(x, my_xticks)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "**Figure legend**: we want to predict if a loan application is fraudulent based on the number of previous applications the customer  made to different loan providers per day during the last week (fraudsters tend to make multiple applications to multiple places to maximise their chances of getting a loan). The yellow and green dots indicate fraudulent and non-fraudulent applications. The dotted black line indicates the linear relationship assumed by the Logistic Regression model. The blue line indicates the outcome of the Logistic function, or in other words, the probability of an application being fraudulent. If the probability is higher than 0.5 then the application has a high probability of being fraudulent, whereas if the probability is smaller than 0.5 then it is very likely a genuine application."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Which algorithms assume linear relationships between predictors and outcome?\n",
    "\n",
    "Models that assume linear relationships between predictors and outome are:\n",
    "\n",
    "- Linear and Logistic Regression\n",
    "- Linear Discriminant Analysis (LDA)\n",
    "- Principal Component Regressors\n",
    "\n",
    "## Why is it important to understand the linear assumptions?\n",
    "\n",
    "If the machine learning model assumes a linear dependency between the predictors Xs and the outcome Y, when there is not such a linear relationship, the model will have a poor performance. In such cases, we are better off trying another machine learning model that does not make such assumption.\n",
    "\n",
    "**Linear models are preferred in business settings for a variety of reasons**:\n",
    "\n",
    "- If there is a linear relationship between Xs and Y, linear models can have very good performance\n",
    "- Non-linear models like trees cannot make accurate predictions on value ranges for the target outside those of the training dataset\n",
    "- Sometimes, the business wants a linear change between the output and the predictors (this would not occur with non-linear methods)\n",
    "- Linear models are easier to interpret, and we can infer how each variable affects the output, thus business can comply with regulations (for example regulations to treat the customer fairly).\n",
    "\n",
    "For more detail on linear relationships refer to the following books:\n",
    "\n",
    "- An introduction to Statistical Learning (http://www-bcf.usc.edu/~gareth/ISL/ISLR%20First%20Printing.pdf)\n",
    "- Elements of Statistical Learning (https://web.stanford.edu/~hastie/Papers/ESLII.pdf)\n",
    "\n",
    "### What can be done if there is no linear relationship?\n",
    "\n",
    "Sometimes a linear relationship may appear after some variable transformation. Two transformations typically used are:\n",
    "\n",
    "- Mathematical transformation of the variable\n",
    "- Discretisation\n",
    "\n",
    "**I will discuss a lot more on the above transformations in sections 14 and 15**. For now, let's look into the relationship of predictors and outcome in a real life example."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "===================================================================================================\n",
    "\n",
    "## Real Life example: \n",
    "\n",
    "### Predicting Sale Price of Houses\n",
    "\n",
    "The problem at hand aims to predict the final sale price of homes based on different explanatory variables describing aspects of residential homes. Predicting house prices is useful to identify fruitful investments, or to determine whether the price advertised for a house is over or underestimated, before making a buying judgment.\n",
    "\n",
    "To download the House Price dataset go this website:\n",
    "https://www.kaggle.com/c/house-prices-advanced-regression-techniques/data\n",
    "\n",
    "Scroll down to the bottom of the page, and click on the link 'train.csv', and then click the 'download' blue button towards the right of the screen, to download the dataset.\n",
    "Save it to a directory of your choice.\n",
    "\n",
    "**Note that you need to be logged in to Kaggle in order to download the datasets**.\n",
    "\n",
    "If you save it in the same directory from which you are running this notebook and name the file 'houseprice.csv' then you can load it the same way I will load it below.\n",
    "\n",
    "====================================================================================================\n",
    "\n",
    "In this notebook, I will demonstrate some naturally occurring linear relationships between predictors X and output variables Y."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "import pandas as pd\n",
    "import numpy as np\n",
    "\n",
    "import matplotlib.pyplot as plt\n",
    "% matplotlib inline\n",
    "\n",
    "from sklearn.linear_model import LinearRegression\n",
    "from sklearn.ensemble import RandomForestRegressor\n",
    "from sklearn.svm import SVR\n",
    "\n",
    "from sklearn.metrics import mean_squared_error\n",
    "from sklearn.model_selection import train_test_split\n",
    "\n",
    "from sklearn.preprocessing import StandardScaler"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "(1460, 7)\n"
     ]
    },
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style>\n",
       "    .dataframe thead tr:only-child th {\n",
       "        text-align: right;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: left;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>OverallQual</th>\n",
       "      <th>BsmtUnfSF</th>\n",
       "      <th>TotalBsmtSF</th>\n",
       "      <th>1stFlrSF</th>\n",
       "      <th>GrLivArea</th>\n",
       "      <th>WoodDeckSF</th>\n",
       "      <th>SalePrice</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>7</td>\n",
       "      <td>150</td>\n",
       "      <td>856</td>\n",
       "      <td>856</td>\n",
       "      <td>1710</td>\n",
       "      <td>0</td>\n",
       "      <td>208500</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>6</td>\n",
       "      <td>284</td>\n",
       "      <td>1262</td>\n",
       "      <td>1262</td>\n",
       "      <td>1262</td>\n",
       "      <td>298</td>\n",
       "      <td>181500</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>7</td>\n",
       "      <td>434</td>\n",
       "      <td>920</td>\n",
       "      <td>920</td>\n",
       "      <td>1786</td>\n",
       "      <td>0</td>\n",
       "      <td>223500</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>7</td>\n",
       "      <td>540</td>\n",
       "      <td>756</td>\n",
       "      <td>961</td>\n",
       "      <td>1717</td>\n",
       "      <td>0</td>\n",
       "      <td>140000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>8</td>\n",
       "      <td>490</td>\n",
       "      <td>1145</td>\n",
       "      <td>1145</td>\n",
       "      <td>2198</td>\n",
       "      <td>192</td>\n",
       "      <td>250000</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "   OverallQual  BsmtUnfSF  TotalBsmtSF  1stFlrSF  GrLivArea  WoodDeckSF  \\\n",
       "0            7        150          856       856       1710           0   \n",
       "1            6        284         1262      1262       1262         298   \n",
       "2            7        434          920       920       1786           0   \n",
       "3            7        540          756       961       1717           0   \n",
       "4            8        490         1145      1145       2198         192   \n",
       "\n",
       "   SalePrice  \n",
       "0     208500  \n",
       "1     181500  \n",
       "2     223500  \n",
       "3     140000  \n",
       "4     250000  "
      ]
     },
     "execution_count": 4,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# load the House Price Dataset, with a few columns for demonstration\n",
    "\n",
    "cols_to_use = ['OverallQual', 'TotalBsmtSF', '1stFlrSF', 'GrLivArea','WoodDeckSF',\n",
    "               'BsmtUnfSF','SalePrice']\n",
    "\n",
    "data = pd.read_csv('houseprice.csv', usecols=cols_to_use)\n",
    "print(data.shape)\n",
    "data.head()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0xd2a5934ef0>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0xd2a456d828>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "image/png": "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\nTkSuQmCC\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0xd2a5b1ec18>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "image/png": "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\n0f5/TznPjHOY1hwAAAAASUVORK5CYII=\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0xd2a5ba4eb8>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0xd2a5c36940>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0xd2a5cdbc88>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# plot the numerical columns vs the output SalePrice to visualise the (linear) relationship\n",
    "\n",
    "for col in cols_to_use[:-1]:\n",
    "    data.plot.scatter(x=col, y='SalePrice', ylim=(0,800000))\n",
    "    plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "# I will group variables into those that have a somewhat linear relationship with sale price\n",
    "#  and those that don't\n",
    "\n",
    "linear_vars = ['OverallQual', 'TotalBsmtSF', '1stFlrSF', 'GrLivArea']\n",
    "non_linear_vars = ['WoodDeckSF', 'BsmtUnfSF']"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "((1022, 7), (438, 7))"
      ]
     },
     "execution_count": 7,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# let's separate into training and testing set\n",
    "X_train, X_test, y_train, y_test = train_test_split(\n",
    "    data.fillna(0), data.SalePrice, test_size=0.3, random_state=0)\n",
    "\n",
    "X_train.shape, X_test.shape"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Assessing linear relationship: examining the errors\n",
    "\n",
    "One thing that we can do to determine whether there is a linear relationship between the variable and the target is:\n",
    "\n",
    "1) make a linear regression model using the desired variables (X)\n",
    "\n",
    "2) predict with the linear model the target\n",
    "\n",
    "3) determine the error (True sale price - predicted sale price)\n",
    "\n",
    "4) observe the distribution of the error.\n",
    "\n",
    "If SalePrice is linearly explained by the variable we are evaluating, then the error should be random noise, typically following a normal distribution centered at 0. So we expect to see the error terms for each observation lying around 0."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### OverallQual"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Train set\n",
      "Linear Regression mse: 2349097879.2825723\n",
      "Test set\n",
      "Linear Regression mse: 2390257968.965773\n",
      "\n",
      "Error Stats\n",
      "count       438.000000\n",
      "mean      -1900.505074\n",
      "std       48909.175847\n",
      "min     -197503.771783\n",
      "25%      -27300.973002\n",
      "50%       -2136.441159\n",
      "75%       16082.692310\n",
      "max      387496.228217\n",
      "Name: error, dtype: float64\n"
     ]
    },
    {
     "data": {
      "text/plain": [
       "<matplotlib.axes._subplots.AxesSubplot at 0xd2a5d76518>"
      ]
     },
     "execution_count": 8,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\nmGKyAAAAAElFTkSuQmCC\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0xd2a44bed68>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "col = 'OverallQual'\n",
    "linreg = LinearRegression()\n",
    "linreg.fit(X_train[col].to_frame(), y_train)\n",
    "print('Train set')\n",
    "pred = linreg.predict(X_train[col].to_frame())\n",
    "print('Linear Regression mse: {}'.format(mean_squared_error(y_train, pred)))\n",
    "print('Test set')\n",
    "pred = linreg.predict(X_test[col].to_frame())\n",
    "print('Linear Regression mse: {}'.format(mean_squared_error(y_test, pred)))\n",
    "print()\n",
    "X_test['error'] = X_test.SalePrice - pred\n",
    "print('Error Stats')\n",
    "print(X_test['error'].describe())\n",
    "X_test.plot.scatter(x=col, y='error')"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "The errors should be normally distributed with a mean around 0. Tthis is not the case forthe variable OverallQual. Thus, we conclude that  'OverallQual' is not linearly related to 'SalePrice'.\n",
    "\n",
    "#### TotalBsmtSF"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Train set\n",
      "Linear Regression mse: 3715940037.817312\n",
      "Test set\n",
      "Linear Regression mse: 4478167557.081897\n",
      "Error stats\n",
      "count       438.000000\n",
      "mean        288.594287\n",
      "std       66995.011776\n",
      "min     -622462.817334\n",
      "25%      -37885.876660\n",
      "50%      -11364.807331\n",
      "75%       36649.455113\n",
      "max      404776.853066\n",
      "Name: error, dtype: float64\n"
     ]
    },
    {
     "data": {
      "text/plain": [
       "<matplotlib.axes._subplots.AxesSubplot at 0xd2a5d5f4e0>"
      ]
     },
     "execution_count": 9,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\nlHxERCRx/x+nkuhsOLdbuAAAAABJRU5ErkJggg==\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0xd2a5a83e48>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "col = 'TotalBsmtSF'\n",
    "linreg = LinearRegression()\n",
    "linreg.fit(X_train[col].to_frame(), y_train)\n",
    "print('Train set')\n",
    "pred = linreg.predict(X_train[col].to_frame())\n",
    "print('Linear Regression mse: {}'.format(mean_squared_error(y_train, pred)))\n",
    "print('Test set')\n",
    "pred = linreg.predict(X_test[col].to_frame())\n",
    "print('Linear Regression mse: {}'.format(mean_squared_error(y_test, pred)))\n",
    "\n",
    "X_test['error'] = X_test.SalePrice - pred\n",
    "print('Error stats')\n",
    "print(X_test['error'].describe())\n",
    "X_test.plot.scatter(x=col, y='error', xlim=(0, 2000), ylim=(-20000, 20000))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "The mean of the model errors in this case is 288, and when compared with the average house sale price (180921), it is very small. Therefore, although SalePrice is not completely explained by the linear relationship with TotalBsmtSF, a linear model for this variable and the outcome is not a bad idea.\n",
    "\n",
    "#### 1stFlrSF"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Train set\n",
      "Linear Regression mse: 3827412644.4517813\n",
      "Test set\n",
      "Linear Regression mse: 4380212049.556351\n",
      "Error stats\n",
      "count       438.000000\n",
      "mean        732.027656\n",
      "std       66254.798523\n",
      "min     -470783.611154\n",
      "25%      -34069.301831\n",
      "50%      -12065.539516\n",
      "75%       32568.866387\n",
      "max      405100.070469\n",
      "Name: error, dtype: float64\n"
     ]
    },
    {
     "data": {
      "text/plain": [
       "<matplotlib.axes._subplots.AxesSubplot at 0xd2a5cbe8d0>"
      ]
     },
     "execution_count": 10,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\nyUdERFL3/wGsqsEzNzQvoAAAAABJRU5ErkJggg==\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0xd2a5b6ed30>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "col = '1stFlrSF'\n",
    "linreg = LinearRegression()\n",
    "linreg.fit(X_train[col].to_frame(), y_train)\n",
    "print('Train set')\n",
    "pred = linreg.predict(X_train[col].to_frame())\n",
    "print('Linear Regression mse: {}'.format(mean_squared_error(y_train, pred)))\n",
    "print('Test set')\n",
    "pred = linreg.predict(X_test[col].to_frame())\n",
    "print('Linear Regression mse: {}'.format(mean_squared_error(y_test, pred)))\n",
    "\n",
    "X_test['error'] = X_test.SalePrice - pred\n",
    "print('Error stats')\n",
    "print(X_test['error'].describe())\n",
    "X_test.plot.scatter(x=col, y='error', xlim=(0, 2000), ylim=(-20000, 20000))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "The model error of the linear model between this variable and the outcome is small compared to house price, and althogh it does not follow a normal distribution, it looks like a linear relationship between 1stFlrSF and Sale Price is not a bad idea.\n",
    "\n",
    "#### GrLivArea"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Train set\n",
      "Linear Regression mse: 2891310084.4531326\n",
      "Test set\n",
      "Linear Regression mse: 3728458191.95017\n",
      "Error stats\n",
      "count       438.000000\n",
      "mean       3551.401925\n",
      "std       61027.443137\n",
      "min     -471477.487422\n",
      "25%      -25480.592702\n",
      "50%        2207.422666\n",
      "75%       25662.855977\n",
      "max      338934.619568\n",
      "Name: error, dtype: float64\n"
     ]
    },
    {
     "data": {
      "text/plain": [
       "<matplotlib.axes._subplots.AxesSubplot at 0xd2a5c877b8>"
      ]
     },
     "execution_count": 11,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0xd2a5afeb70>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "col =  'GrLivArea'\n",
    "linreg = LinearRegression()\n",
    "linreg.fit(X_train[col].to_frame(), y_train)\n",
    "print('Train set')\n",
    "pred = linreg.predict(X_train[col].to_frame())\n",
    "print('Linear Regression mse: {}'.format(mean_squared_error(y_train, pred)))\n",
    "print('Test set')\n",
    "pred = linreg.predict(X_test[col].to_frame())\n",
    "print('Linear Regression mse: {}'.format(mean_squared_error(y_test, pred)))\n",
    "\n",
    "X_test['error'] = X_test.SalePrice - pred\n",
    "print('Error stats')\n",
    "print(X_test['error'].describe())\n",
    "X_test.plot.scatter(x=col, y='error', xlim=(0, 3000), ylim=(-20000, 20000))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Analysis of the errors of the linear model between this variable and Sale Price does not follow a normal distribution centered at zero. Therefore, there is not a strictly linear relationship between GrLivArea and Sale Price."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.axes._subplots.AxesSubplot at 0xd2a44ac828>"
      ]
     },
     "execution_count": 12,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAV0AAAEFCAYAAABAVTQtAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAADb9JREFUeJzt3X2QXeVdwPHv5gVCFqihE4hvS7Tgs4mlxXbS4FQkYllq\nFDOC0yoNVjAgtiPO1Akd01rjDC/aWmfETltHh4IBxNi0DTpU40xb1DqDKdIpNuyPgg2ZKdLGZEtC\n3ptd/zj3bu5udtfdbO5vb85+PzOZufee5zx7nrx89+Ts3bNdQ0NDSJJyzJnpA5Ck2cToSlIioytJ\niYyuJCUyupKUaN5EG3fv3l/LtzYsWrSQgYGDM30YbeUa62M2rLNua1y8+Lyu8bbNyjPdefPmzvQh\ntJ1rrI/ZsM7ZsMamWRldSZopRleSEhldSUpkdCUpkdGVpERGV5ISGV1JSmR0JSmR0ZWkREZXkhIZ\nXUlKZHQlKZHRlaRERleSEhldSUpkdCUpkdGVpERGV5ISGV1JSjThD6acbe65ZyMDA3tPy1wHDhwA\noLu7e9pzLVp0ARs2bJz2PJJmntFtMTCwlz179tA1/5xpzzV07DAAR46P+0NBJznPoWkfi6TOYXRH\n6Zp/Dude8ovTnufV5x8DmPZczXkk1YPXdCUpkdGVpERGV5ISGV1JSmR0JSmR0ZWkREZXkhIZXUlK\nZHQlKZHRlaRERleSEhldSUpkdCUpkdGVpERGV5ISGV1JSmR0JSmR0ZWkREZXkhIZXUlKZHQlKZHR\nlaRERleSEhldSUpkdCUpkdGVpERGV5ISGV1JSmR0JSmR0ZWkREZXkhIZXUlKZHQlKZHRlaRERleS\nEhldSUpkdCUpkdGVpERGV5ISGV1JSmR0JSlRW6K7efPDbN78cDumVo3490SzUVuiu337k2zf/mQ7\nplaN+PdEs5GXFyQpkdGVpERGV5ISGV1JSmR0JSmR0ZWkREZXkhIZXUlKZHQlKZHRlaRERleSEhld\nSUpkdCUpkdGVpERGV5ISGV1JSmR0JSmR0ZWkREZXkhIZXUlKZHQlKZHRlaRERleSEhldSUpkdCUp\nkdGVpERGV5ISGV1JSmR0JSmR0ZWkREZXkhIZXUlKZHQlKZHRlaRERleSEhldSUpkdCUpkdGVpETz\nZvoApP7+HWzb9jgAixZdwEUXLaGvbzWbNt3PwMBe+vpW09u7nP7+HSP2W7x45YjnzTl6epaya9dO\nenqWjthv166dfPvbL7NixRXD+/T2Lh/zeJrbxns8enzrx+tE4x37VMecytgzUTvXZ3Q147Zu3ULE\nswDMmTOHs89eQF/fap544gsMDg5y6NAhenuXs3XrlhH7XXnlylHzfAaAnp6L2bXrRXp6Lh6x365d\nL3LkyGFeeulbw/uM9Y+qOb5139GPR49v/XidaLxjn+qYUxl7Jmrn+oyuZtSxY0eHgws0InuQu+/+\nAwYHBwGIeJZt2x4fMQ7gmWeeYcmSpUB1lnvo0MHh8RPt1/q8v3/HiH9Y/f07hre37tv6uHWf1vER\nz540XydoPcbxjm8yY05l7Jmo3etrS3QPHDjA0aNHWL/+jnZMP21z587h+PHBk14fGNjLUIdd5h46\nfpSBgcNT/r0cb42dZGBgL0NDY2974YVvjHjePItt9cgjj/C+920Yd/tEr5/YvmXEP6rWs+nWfUc+\nPrHP6LPv0fN1gpFrGvv4JjPmVMaeidq9vs4qjCTVXFvOdLu7u+nu7uYjH7mvHdNP2+LF57F79/6T\nXl+//g727js4A0c0vq65Z7Ho/IVT/r0cb42dZP36Ozh27Cj79u07advrXnfpiLPdNWuu59FHHxox\n5sYbb5xw+0Svn9h+w0nPP/zhu07ad+TjG8YcP9Z8nWDkmsY+vsmMOZWxZ6J2r89ruppR8+efRSnL\nTvpC2gc+8IesW7eWwcFBSllGX99qnn76qRH7XnbZZcOfWPr6Vo/5hbTW/ZpfSLv00jI8x+j/Ovb2\nLqeUZcNzNvdtfdy6T3N8J38hrXVN4x3fZMacytgzUbvXZ3Q149asueGkt4wBXHXV1cNvGWuOm3ie\n64GRbxlr3W+st4yNdzz/3+PR41s/XieazBnbVM7q6niG26qd6zO6mnG9vcvHPKO46aZbTho3kWac\nR49tPp7sWctY+060/3jH30kmc3xTWUOnr3e62rk+v5AmSYmMriQlMrqSlMjoSlIioytJiYyuJCUy\nupKUyOhKUiKjK0mJjK4kJTK6kpTI6EpSIqMrSYmMriQlMrqSlMjoSlIioytJiYyuJCUyupKUyOhK\nUiKjK0mJjK4kJTK6kpTI6EpSIqMrSYmMriQlMrqSlMjoSlIioytJiYyuJCUyupKUyOhKUiKjK0mJ\njK4kJTK6kpTI6EpSIqMrSYmMriQlMrqSlGheOyZdsWJlO6ZVzfj3RLNRW6L7jne8qx3Tqmb8e6LZ\nyMsLkpTI6EpSIqMrSYmMriQlMrqSlMjoSlIioytJiYyuJCUyupKUyOhKUiKjK0mJjK4kJTK6kpTI\n6EpSIqMrSYmMriQlMrqSlMjoSlIioytJiYyuJCUyupKUyOhKUiKjK0mJjK4kJTK6kpTI6EpSIqMr\nSYmMriQlMrqSlMjoSlIioytJiYyuJCUyupKUyOhKUiKjK0mJjK4kJTK6kpTI6EpSIqMrSYmMriQl\nmjfTB9Bpho4d4tXnHzst8wDTnquaZ+G0j0dSZzC6LRYtuuC0zXXgwBAA3d3TDebC03pckmaW0W2x\nYcPGmT4ESTXnNV1JSmR0JSmR0ZWkREZXkhIZXUlKZHQlKZHRlaRERleSEhldSUpkdCUpkdGVpERG\nV5ISGV1JSmR0JSmR0ZWkREZXkhIZXUlKZHQlKZHRlaRERleSEnUNDQ3N9DFI0qzhma4kJTK6kpTI\n6EpSIqMrSYmMriQlMrqSlMjoSlKieTN9AKdTKWUl8McRsaqUcgnwADAE/Bfw3ogYLKXcCvwm8D3g\nroj4h1LKOcBDwIXAfuDdEbF7RhYxgVLKfOB+YClwNnAXsIMarbOUMhf4S6BQrel24DA1WmOrUsqF\nwFPANVTreIAarbOU8p/AvsbTbwJ3U7M1TlVtznRLKXcCfwUsaLz0p8AHI+JKoAtYU0pZAtwBvBW4\nFri3lHI28FvAM42xfw18MPv4J2ktsKdxnG8HPkb91nkdQES8ler47qZ+awSGP4n+BXCo8VKt1llK\nWQB0RcSqxq+bqdkaT0Vtogu8AFzf8vzNwBONx58H3ga8BfhyRByJiFeA54E3AD8F/OOosZ3o74Df\nbzzuojorqNU6I+JzwG2NpxcD36Vma2zxJ8AngZcaz+u2zjcCC0sp20opXyilXEH91jhltYluRGwB\njrW81BURze9x3g+8BjgfeKVlzFivN1/rOBHxakTsL6WcB3ya6jN/Hdf5vVLKg8CfAw9TwzWWUn4d\n2B0R/9Tyct3WeZDqE8u1VJeJavlnOVW1ie4YBlsen0d1xrSv8Xii15uvdaRSyg8DXwQ2RcQj1HSd\nEfFu4Meoru+e07KpLmu8BbimlPIl4HKq/z5f2LK9Dut8DngoIoYi4jlgD3BRy/Y6rHHK6hzdp0sp\nqxqPfw74V+A/gCtLKQtKKa8BllFdzP8ysHrU2I5TSrkI2Aa8PyLub7xcq3WWUm4qpfxe4+lBqk8q\nX6nTGgEi4qcj4qqIWAV8Ffg14PM1W+ctwEcBSik/QHXmuq1ma5yyWt1lrJSyFHg0Iq4opTTPks4C\nngVujYjjja+S3kb1CeeeiNhSSlkIPAh8P3AUuDEiXp6RRUyglPJnwDuB/paXfwe4j5qss5TSDXwK\nWALMB/6Ial21+rNs1TjbvZ3qE0xt1llKOYvqnQo9VO9WeD/wv9RojaeiVtGVpE5X58sLktRxjK4k\nJTK6kpTI6EpSIqMrSYlqdcMbdZZSyjyqtwmtpXrL0FyqtwDd2/JdSc2xO4FVEbFz1OuPA+si4iUm\nUErZDrwcEdedruOX2sEzXbXTx6m+r/4nI2I5sAL4WeA9k50gIlZPIriXUb2P842N79iTOpZnumqL\nUsoPUZ3h/mBEfBcgIvaVUt4L/Hgp5QHgtcAlwJ0TzLMTWAV8BrgtIr7SuP3ji8CbIuI7wM3APzfm\nuxX4UGPfjcAVVG/O/xjVd/N9ojHuIPDbEfF0KeX1VPd5OJfqW3E/GhH3nabfCmkEz3TVLm8BdkTE\nQOuLEdHfuDkRVLepXBYRfz+J+TYBv9J4fDXwtYj4TuP2iGuBzcDfAr/RuKzRtCAilkfEx6kubdwZ\nEW+i+u6nRxtj1lHdw3UF8DNUt5OU2sIzXbXT8HXbUsovU90VbS7VTcm/Djw5hbn+Bvj3Usp64Fep\nbm4N8PPA/0TEjlJKF9W30l4HfLax/cnGxz+X6vLGp0opzTnPLaW8Fvhd4O2Nez68geqMV2oLz3TV\nLk8By0sp5wNExKcj4nKqIC5ujDk03s6jNb7n/jmqSw1vAz7X2HQz0NO4DPFNqpuq3N6ya/NjzAUO\nR8TlzV/ASmAv1VnyL1H9FI4NU1qlNEVGV20RES9SXRJ4sJTyfTD8o3h+ATh+itNuorpr1Zci4mDj\nrmt9wOsjYmlELAV+Ari6lPKjo47nFeAbpZS1jWO5BviXxuZrgA9FxFbgqpZjlU47o6t2eg/V7fm+\nWEr5KtXt+t5MdZu+sXy9lPJq89cY2z8LXMqJSwtrgccj4lvNARHx38BjnPjpE63eBawrpXwNuBd4\nZ+OtaxuBf2v8PK9rgZ3Aj0xlodJkeZcxSUrkma4kJTK6kpTI6EpSIqMrSYmMriQlMrqSlMjoSlKi\n/wNyEyXYNv/DwwAAAABJRU5ErkJggg==\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0xd2a5cc1588>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# let's look at the distribution of GrLivArea\n",
    "import seaborn as sns\n",
    "sns.boxplot('GrLivArea', data=data)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0xd2a5ad0d68>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0xd2a6333b70>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0xd2a631c048>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "image/png": "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\ngg==\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0xd2a5b6dc18>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "image/png": "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\nOwAAAABJRU5ErkJggg==\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0xd2a631c390>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0xd2a67c90f0>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# let's look at the distributions of these variables\n",
    "\n",
    "for var in cols_to_use[:-1]:\n",
    "    fig = data[var].hist(bins=50)\n",
    "    fig.set_xlabel(var)\n",
    "    fig.set_ylabel('Number of Houses')\n",
    "    plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "The first 4 variables, which show a somewhat linear relationship with the target, show as well a somewhat Gaussian distribution. The fact that the distribution is not completely Gaussian, and the relationship not completely linear, ends in the distribution of the model errors seen in the previous notebook cells.\n",
    "\n",
    "The last 2 variables deviate from the Gaussian distribution, which in turn may affect both linear relationship with target and error distribution. See below:\n",
    "\n",
    "### WoodDeckSF"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Train set\n",
      "Linear Regression mse: 5543411222.505992\n",
      "Test set\n",
      "Linear Regression mse: 5901091788.125448\n",
      "Error stats\n",
      "count       438.000000\n",
      "mean       1488.878480\n",
      "std       76891.960561\n",
      "min     -138437.194404\n",
      "25%      -45903.032561\n",
      "50%      -16564.068794\n",
      "75%       31620.655162\n",
      "max      550418.334283\n",
      "Name: error, dtype: float64\n"
     ]
    },
    {
     "data": {
      "text/plain": [
       "<matplotlib.axes._subplots.AxesSubplot at 0xd2a68d6fd0>"
      ]
     },
     "execution_count": 14,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\niIhIYv4/X5dMqgvtUkQAAAAASUVORK5CYII=\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0xd2a68885f8>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "col = 'WoodDeckSF'\n",
    "linreg = LinearRegression()\n",
    "linreg.fit(X_train[col].to_frame(), y_train)\n",
    "print('Train set')\n",
    "pred = linreg.predict(X_train[col].to_frame())\n",
    "print('Linear Regression mse: {}'.format(mean_squared_error(y_train, pred)))\n",
    "print('Test set')\n",
    "pred = linreg.predict(X_test[col].to_frame())\n",
    "print('Linear Regression mse: {}'.format(mean_squared_error(y_test, pred)))\n",
    "\n",
    "X_test['error'] = X_test.SalePrice - pred\n",
    "print('Error stats')\n",
    "print(X_test['error'].describe())\n",
    "X_test.plot.scatter(x=col, y='error')"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "From this error plot, we can see that this variable is not linearly related to the Sale Price. Errors do not follow a normal distribution centered in zero."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Let's compare the performance of some machine learning models on linear variables"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "# let's normalise the variables (this is necessary for linear regression as seen in previous lecture)\n",
    "scaler = StandardScaler()\n",
    "X_train = scaler.fit_transform(X_train[linear_vars+non_linear_vars])\n",
    "X_test = scaler.transform(X_test[linear_vars+non_linear_vars])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "variable:  OverallQual\n",
      "Test set\n",
      "Linear Regression mse: 2390257968.965772\n",
      "\n",
      "Test set\n",
      "Random Forests mse: 3103233518.4366794\n",
      "\n",
      "\n",
      "variable:  TotalBsmtSF\n",
      "Test set\n",
      "Linear Regression mse: 4478167557.081897\n",
      "\n",
      "Test set\n",
      "Random Forests mse: 3977464855.683042\n",
      "\n",
      "\n",
      "variable:  1stFlrSF\n",
      "Test set\n",
      "Linear Regression mse: 4380212049.556351\n",
      "\n",
      "Test set\n",
      "Random Forests mse: 4308458134.186173\n",
      "\n",
      "\n",
      "variable:  GrLivArea\n",
      "Test set\n",
      "Linear Regression mse: 3728458191.950171\n",
      "\n",
      "Test set\n",
      "Random Forests mse: 3922595724.42011\n",
      "\n",
      "\n"
     ]
    }
   ],
   "source": [
    "# for each linear variable I build a linear regression, a support vector machine with a linear kernel and\n",
    "# a random forest, and the idea is to compare the mean squared error on the test set.\n",
    "\n",
    "for i in range(len(linear_vars)):\n",
    "    print('variable: ', linear_vars[i])\n",
    "    linreg = LinearRegression()\n",
    "    linreg.fit(pd.Series(X_train[:,i]).to_frame(), y_train)\n",
    "    print('Test set')\n",
    "    pred = linreg.predict(pd.Series(X_test[:,i]).to_frame())\n",
    "    print('Linear Regression mse: {}'.format(mean_squared_error(y_test, pred)))\n",
    "    print()\n",
    "\n",
    "    rf = RandomForestRegressor(n_estimators=5, random_state=39, max_depth=2,min_samples_leaf=100)\n",
    "    rf.fit(pd.Series(X_train[:,i]).to_frame(), y_train)\n",
    "    print('Test set')\n",
    "    pred = rf.predict(pd.Series(X_test[:,i]).to_frame())\n",
    "    print('Random Forests mse: {}'.format(mean_squared_error(y_test, pred)))\n",
    "    print()\n",
    "    print()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "For most of the \"linearly related\" variables, the linear regression model is at least as good, if not better, than the random forest at estimating the Sale Price. Compare the mse of the test sets for the three different models."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "variable:  WoodDeckSF\n",
      "Test set\n",
      "Linear Regression mse: 5901091788.125448\n",
      "\n",
      "Test set\n",
      "Random Forests mse: 5892571732.6786375\n",
      "\n",
      "\n",
      "variable:  BsmtUnfSF\n",
      "Test set\n",
      "Linear Regression mse: 6406397443.391433\n",
      "\n",
      "Test set\n",
      "Random Forests mse: 6605256151.583271\n",
      "\n",
      "\n"
     ]
    }
   ],
   "source": [
    "# for each non-linear variable I build a linear regression, a support vector machine with a linear kernel and\n",
    "# a random forest, and the idea is to compare the mean squared error on the test set.\n",
    "\n",
    "for i in [4,5]:\n",
    "    print('variable: ', non_linear_vars[i-4])\n",
    "    linreg = LinearRegression()\n",
    "    linreg.fit(pd.Series(X_train[:,i]).to_frame(), y_train)\n",
    "    print('Test set')\n",
    "    pred = linreg.predict(pd.Series(X_test[:,i]).to_frame())\n",
    "    print('Linear Regression mse: {}'.format(mean_squared_error(y_test, pred)))\n",
    "    print()\n",
    "\n",
    "\n",
    "    rf = RandomForestRegressor(n_estimators=5, random_state=39, max_depth=2,min_samples_leaf=100)\n",
    "    rf.fit(pd.Series(X_train[:,i]).to_frame(), y_train)\n",
    "    print('Test set')\n",
    "    pred = rf.predict(pd.Series(X_test[:,i]).to_frame())\n",
    "    print('Random Forests mse: {}'.format(mean_squared_error(y_test, pred)))\n",
    "    print()\n",
    "    print()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Random Forests seem to be better for the first variable, and not too much of a difference for the second one.\n",
    "\n",
    "### Mmachine learning model performance when built using variables \"linearly\" related to the Sale Price"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 18,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Test set\n",
      "Linear Regression mse: 2253814462.3478937\n",
      "\n",
      "Test set\n",
      "Random Forests mse: 2654038031.5467834\n",
      "\n"
     ]
    }
   ],
   "source": [
    "linreg = LinearRegression()\n",
    "linreg.fit(X_train[:,0:3], y_train)\n",
    "print('Test set')\n",
    "pred = linreg.predict(X_test[:,0:3])\n",
    "print('Linear Regression mse: {}'.format(mean_squared_error(y_test, pred)))\n",
    "print()\n",
    "\n",
    "rf = RandomForestRegressor(n_estimators=5, random_state=39, max_depth=2,min_samples_leaf=100)\n",
    "rf.fit(X_train[:,0:3], y_train)\n",
    "print('Test set')\n",
    "pred = rf.predict(X_test[:,0:3])\n",
    "print('Random Forests mse: {}'.format(mean_squared_error(y_test, pred)))\n",
    "print()\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Linear machine learning algorithms make betters predictions than random forests when trained on variables that show a somewhat linear relationship to the outcome, in this case, Sale Price.\n",
    "\n",
    "### Machine learning models performance when using variables not \"linearly\" related to Sale Price"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 19,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Test set\n",
      "Linear Regression mse: 5901091788.125448\n",
      "\n",
      "Test set\n",
      "Random Forests mse: 5892571732.6786375\n",
      "\n",
      "\n"
     ]
    }
   ],
   "source": [
    "linreg = LinearRegression()\n",
    "linreg.fit(X_train[:,4:5], y_train)\n",
    "print('Test set')\n",
    "pred = linreg.predict(X_test[:,4:5])\n",
    "print('Linear Regression mse: {}'.format(mean_squared_error(y_test, pred)))\n",
    "print()\n",
    "\n",
    "\n",
    "rf = RandomForestRegressor(n_estimators=5, random_state=39, max_depth=2,min_samples_leaf=100)\n",
    "rf.fit(X_train[:,4:5], y_train)\n",
    "print('Test set')\n",
    "pred = rf.predict(X_test[:,4:5])\n",
    "print('Random Forests mse: {}'.format(mean_squared_error(y_test, pred)))\n",
    "print()\n",
    "print()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "However, when building a model using non-linear variables, alternative models like Random Forests may make better predictions. This is however, to be interpreted with caution, because Random Forests are good at predicting the Sale Price within the ranges of prices observed in the training dataset, but will not do a great job at inferring prices above or below the ranges on the training set."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "collapsed": true
   },
   "source": [
    "**That is all for this demonstration. I hope you enjoyed the notebook, and see you in the next one.**"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.6.1"
  },
  "toc": {
   "nav_menu": {},
   "number_sections": true,
   "sideBar": true,
   "skip_h1_title": false,
   "toc_cell": false,
   "toc_position": {
    "height": "605px",
    "left": "0px",
    "right": "1236.4px",
    "top": "107px",
    "width": "282px"
   },
   "toc_section_display": "block",
   "toc_window_display": true
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
